package com.qf.fmall2204.index.service;

import com.qf.fmall2204.index.entity.Category;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 商品分类 服务类
 * </p>
 *
 * @author dong
 * @since 2023-04-21
 */
public interface ICategoryService extends IService<Category> {

    /**
     * 写sql查询商品分类信息
     * @return
     */
    List<Category> categoryListBySql();

    /**
     * 使用mp的方法查询商品分类信息，不写sql
     * @return
     */
    List<Category> categoryListByMP();

    /**
     * 使用mp的方法询商品分类信息，不写sql，但是也不会给数据库发送过多的sql语句
     * @return
     */
    List<Category> categoryListByMPBetter();


    /**
     * 使用mp的方法询商品分类信息，不写sql，但是也不会给数据库发送过多的sql语句,使用stream api处理数据
     * @return
     */
    List<Category> categoryListByMPStream();

    /**
     * 查询每个大类下，销量前六的商品信息
     * @return
     */
    List<Category> categoryRecommends();

    /**
     * 查询每个大类下，销量前六的商品信息
     * 减少sql的查询次数
     * @return
     */
    List<Category> categoryRecommendsBetter();
}
